package com.hwxm.ltim.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 聊天消息实体
 */
@Data
@TableName("t_chat_message")
public class ChatMessage {

    /**
     * 消息ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 消息唯一标识（客户端生成）
     */
    private String msgId;

    /**
     * 消息类型：2-单聊 3-群聊
     */
    private Integer type;

    /**
     * 发送者ID
     */
    private Long senderId;

    /**
     * 接收者ID（单聊时使用）
     */
    private Long receiverId;

    /**
     * 群组ID（群聊时使用）
     */
    private Long groupId;

    /**
     * 消息内容类型：1-文本 2-图片 3-语音 4-视频 5-文件
     */
    private Integer contentType;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 扩展字段（JSON格式）
     */
    private String extra;

    /**
     * 消息状态：0-未读 1-已读
     */
    private Integer status;

    /**
     * 是否已删除：0-否 1-是
     */
    private Integer deleted;

    /**
     * 发送时间
     */
    private LocalDateTime sendTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;
}

